<?php

/*
 * Classe de Realização de Login (Acesso ao sistema)
 */

class LoginModel extends Model{
public $_tabela = "usuarios"; /*Tabela de usuários */    
    
    /* Função que retorna um usuário cadastrado e cria uma session de login para manter o usuário logado*/
    public function verificaUsuario($email,$senha){
        $redi = new redirectorHelper();
        $session = new sessionHelper();
        
        $senha = md5($senha);
        $where = "email=\"$email\" and senha=\"$senha\"";
        $sql = $this->read($where);
        
        if(count($sql) == 1){
        $session->createSession("userData", $sql[0]); /* salva dados numa session */
        $redi->goToControllerAction("index", null); /*redireciona para a página principal */
        }
        else {
            $redi->goToControllerAction("login", "error"); /*Redireciona para a página de login informando o erro */
        }
    }
    /*Verifica se a session do usuário existe. */
    public function verificaSession($email,$senha){
        $redi = new redirectorHelper();
        $session = new sessionHelper();
        
        $senha = $senha;
        $where = "email=\"$email\" and senha=\"$senha\"";
        $sql = $this->read($where);
        
        if(count($sql) == 1){
        
        }
        else {
            $redi->goToControllerAction("login", "error"); /*Redireciona para a página de login informando o erro */
        }
    }
    
    /*Realaiza o logout no sistema */
    public function logout(){
        $session =  new sessionHelper();
        $redi = new redirectorHelper();
        
        
        $session->DeleteSession($_SESSION["userData"]);
        $redi->goToController("login");
        return $this;
    }
    
    public function verificador(){
        $redi = new redirectorHelper();
        if  (isset($_SESSION["userData"]) == false){
           $redi->goToController("login");
        }  
        else if($this->verificaSession($_SESSION["userData"]["EMAIL"], $_SESSION["userData"]["SENHA"] ) ){
               $redi->goToController("login");
           }
        
    }
}
?>
